In many Information Technology (IT) systems today, a software vendor provides to its customers a standard but complex and extensive software system. The customer can then develop its own software that uses and/or builds upon the software vendor's system. The customer system, which includes the vendor's, standard system and the customer-developed software, can be referred to as the customer's software system landscape, or simply landscape. In some situations, customers have to update their landscape on a regular basis by deploying support packages for software bug fixes and/or software enhancement packages for new functionalities. These support and enhancement packages are normally provided by the software vendor. The deployment of support packages and/or enhancement packages requires a lot of effort by both the software vendor and the customer, an effort that is difficult to estimate before the support package or enhancement package is deployed in the customer system.